package com.ych.modules.base.dbEntity;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * Created with IntelliJ IDEA.
 * Author: Usopp.tsui
 * Date: 2020/12/12
 * Time: 10:38
 * Description:
 */
@Data
@TableName("t_user_account")
@ApiModel(value = "TUserAccountEntity", description = "数据库-用户账户表")
public class TUserAccountEntity implements Serializable {
    @TableId("user_id")
    @ApiModelProperty(value = "用户主键", dataType = "String", notes = "用户主键")
    private String userId;

    @TableField("raffle_ticket")
    @ApiModelProperty(value = "抽奖券数量 默认：0（可以互相转赠交易）", dataType = "Integer", notes = "抽奖券数量 默认：0（可以互相转赠交易）")
    private Integer raffleTicket;

    @TableField("cash_amount")
    @ApiModelProperty(value = "用户总充值金额", dataType = "BigDecimal", notes = "用户总充值金额")
    private BigDecimal cashAmount;

    @TableField("total_brokerage_amount")
    @ApiModelProperty(value = "用户总获得佣金", dataType = "BigDecimal", notes = "用户总获得佣金")
    private BigDecimal totalBrokerageAmount;

    @TableField("month_amount")
    @ApiModelProperty(value = "当月充值金额", dataType = "BigDecimal", notes = "当月充值金额")
    private BigDecimal monthAmount;

    @TableField("brokerage_amount")
    @ApiModelProperty(value = "佣金数量。默认：0", dataType = "BigDecimal", notes = "佣金数量。默认：0")
    private BigDecimal brokerageAmount;

    @TableField("gold_coin_amount")
    @ApiModelProperty(value = "金币数量。默认：0", dataType = "BigDecimal", notes = "金币数量。默认：0")
    private BigDecimal goldCoinAmount;

    @TableField("abnormal_num")
    @ApiModelProperty(value = "异常次数", dataType = "Integer", notes = "异常次数")
    private Integer abnormalNum;

    @TableField("update_time")
    @ApiModelProperty(value = "上次变动时间，第一次为创建时间", dataType = "Date", notes = "上次变动时间，第一次为创建时间")
    private Date updateTime;

}
